#ifndef __AK09915_H
#define __AK09915_H

#include "bsp_spi.h"
#include "bmi008.h"

void AK09915_CS(uint8_t enable);
uint8_t AK09915_Write(uint8_t *data,uint16_t length);
uint8_t AK09915_Read(uint8_t *data,uint16_t length);
void AK09915_WriteReg(uint8_t reg,uint8_t data);
uint8_t AK09915_ReadReg(uint8_t reg);
void AK09915_GetData(void);
void AK09915_Init(void);
void AK09915_UpdateCalibration(float magX,float magY,float magZ);
int8_t AK09915_GetCalibration(float *magXmin,float *magXmax,float *magYmin,float *magYmax,float *magZmin,float *magZmax);
#endif


